#ifndef VIDEOANALYSISSYSTEM_VAS_VIDEO_H
#define VIDEOANALYSISSYSTEM_VAS_VIDEO_H
#include "vas_do.h"
#include "vas_utils.h"
#include "vas_exception.h"
namespace vas{
    static std::mutex VIDEO_NUM_MTX;
    static std::map<std::string, std::pair<Channel, bool>>* VIDEO_PROCESSING = nullptr;

    void VideoInit();

    void RegisterVideo(const Channel &channel);

    void UnregisterVideo(const Channel &channel);

    void ReadVideo(const Channel &channel, void (*pf)(const cv::Mat &i, const Channel &c, long t));

    void StopVideo(const std::string & channel_id);

    std::vector<Channel> GetProcessingVideos();

    int GetProcessingVideoNum();
}
#endif //VIDEOANALYSISSYSTEM_VAS_VIDEO_H
